/******************************************************************************* * Copyright (c) 2000, 2005 IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * IBM Corporation - initial API and implementation *******************************************************************************/ package org.eclipse.swt.tests.junit; import junit.framework.*; import junit.textui.*; /** * Suite for running all SWT test cases. */ public class AllGtkTests extends TestSuite { /** * Tests not run because they consistently fail */ static String[] excludeTests = { "test_getActiveShell(org.eclipse.swt.tests.junit.Test_org_eclipse_swt_widgets_Display)", "test_postLorg_eclipse_swt_widgets_Event(org.eclipse.swt.tests.junit.Test_org_eclipse_swt_widgets_Display)", "test_setBackgroundLorg_eclipse_swt_graphics_Color(org.eclipse.swt.tests.junit.Test_org_eclipse_swt_graphics_Image)", "test_getBoundsI(org.eclipse.swt.tests.junit.Test_org_eclipse_swt_widgets_TableItem)", "test_getBoundsI(org.eclipse.swt.tests.junit.Test_org_eclipse_swt_widgets_TreeItem)", "test_getBounds(org.eclipse.swt.tests.junit.Test_org_eclipse_swt_widgets_TreeItem)", "test_setDefaultItemLorg_eclipse_swt_widgets_MenuItem(org.eclipse.swt.tests.junit.Test_org_eclipse_swt_widgets_Menu)", "test_setActive(org.eclipse.swt.tests.junit.Test_org_eclipse_swt_widgets_Shell)", "test_getItemHeight(org.eclipse.swt.tests.junit.Test_org_eclipse_swt_widgets_List)", "test_setFontLorg_eclipse_swt_graphics_Font(org.eclipse.swt.tests.junit.Test_org_eclipse_swt_widgets_List)", "test_setTopIndexI(org.eclipse.swt.tests.junit.Test_org_eclipse_swt_widgets_List)", "test_setFontLorg_eclipse_swt_graphics_Font(org.eclipse.swt.tests.junit.Test_org_eclipse_swt_widgets_List)", "test_getTextLimit(org.eclipse.swt.tests.junit.Test_org_eclipse_swt_widgets_Text)", "test_getTopPixel(org.eclipse.swt.tests.junit.Test_org_eclipse_swt_widgets_Text)", "test_setTextLimitI(org.eclipse.swt.tests.junit.Test_org_eclipse_swt_widgets_Text)", "test_setTopIndexI(org.eclipse.swt.tests.junit.Test_org_eclipse_swt_widgets_Text)", "test_getHeaderHeight(org.eclipse.swt.tests.junit.Test_org_eclipse_swt_widgets_Tree)", "test_setSelectionEmpty(org.eclipse.swt.tests.junit.Test_org_eclipse_swt_widgets_TabFolder)", "test_getSelectionIndex(org.eclipse.swt.tests.junit.Test_org_eclipse_swt_widgets_Combo)", "test_getRowCount(org.eclipse.swt.tests.junit.Test_org_eclipse_swt_widgets_ToolBar)", "test_getHeaderHeight(org.eclipse.swt.tests.junit.Test_org_eclipse_swt_widgets_Table)", //text layout "test_getNextOffset2(org.eclipse.swt.tests.junit.Test_org_eclipse_swt_graphics_TextLayout)", }; static boolean isExcluded(String name) { for (int i = 0; i < excludeTests.length; i++) { if (name.equals(excludeTests[i])) return true; } return false; } public static void main(String[] args) { SwtTestCase.unimplementedMethods = 0; TestRunner.run(suite()); if (SwtTestCase.unimplementedMethods > 0) { System.out.println("\nCalls to warnUnimpl: " + SwtTestCase.unimplementedMethods); System.out.println("\nExcluded Tests: " + excludeTests.length); } } public static Test suite() { TestSuite fullSuite = (TestSuite)AllTests.suite(); TestSuite filteredSuite = new TestSuite(); for (int i = 0; i < fullSuite.testCount(); i++) { Test candidateTest = fullSuite.testAt(i); if (candidateTest instanceof TestSuite) { TestSuite suite = (TestSuite)candidateTest; for (int j = 0; j < suite.testCount(); j++) { Test test = suite.testAt(j); if (!isExcluded(test.toString())) filteredSuite.addTest(test); } } } return filteredSuite; } }